package com.zzw.bridge.business.vo;

import com.baomidou.mybatisplus.annotation.TableField;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;
import java.util.List;

/**
 * 大桥项目表Vo
 *
 * @author XiaoJie
 * @email
 * @date 2025-05-19 10:32:20
 */
@Schema(name = "大桥项目表Vo", description = "大桥项目表Vo	")
@Data
public class ZzwPierProjectVo implements Serializable {
	private static final long serialVersionUID = 1L;

	@Schema(description = "id")
	private String id;

	@Schema(description = "父级ID")
	private String parentId;

	@Schema(description = "项目名称")
	private String projectName;

	@Schema(description = "账户名称（前端不用传；后端取用户信息）")
	private String accountUsername;

	@Schema(description = "项目地址")
	private String projectAddress;

	@Schema(description = "项目状态（0-停止；1-正常）")
	private Integer projectStatus;

	@Schema(description = "项目类型（0-公司；1-项目；2-线路；3-大桥；4-主线）")
	private Integer projectType;

	@Schema(description = "项目投资金额")
	private BigDecimal investmentAmount;

	@Schema(description = "公司编码")
	private String companyCode;

	@Schema(description = "联系人")
	private String contacts;

	@Schema(description = "联系电话")
	private String contactsPhone;

	@Schema(description = "层级")
	private Integer level;

	@Schema(description = "父项目总级数")
	private Integer parentLevel;

	@Schema(description = "创建时间")
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
	@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
	private Date createTime;

	@Schema(description = "更新时间")
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
	@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
	private Date updateTime;

	@Schema(description = "是否删除（0-未删除；1-已删除）")
	private Integer isDelete;

	@Schema(description = "子项目")
	private List<ZzwPierProjectVo> subsetList;

}
